RPR is a metropolitan area network (MAN) with a brand-new ring structure, which supports the data traffic for three service levels, and has the advantages of high bandwidth utilization, high reliability and so on. One of the key techniques for implementing RPR is to allocate the link bandwidth to the nodes competing for resources on the ring. The present invention discloses a method for dynamically allocating link bandwidth on resilient packet ring. Compared with the solution proposed by the current PRP working group (IEEE 802.17 working group), this method is simpler and has higher bandwidth utilization. The mission of IEEE 802.17 working group is to establish a technical standard for RPR. The RPR technology is used in the data communication in WAN or LAN, and compared with the existing data communication technology used in WAN or LAN, it has two obvious advantages:    1. higher bandwidth utilization.    2. fast protection mechanism. The protection kicks in within 50 ms, which is on the same level as fault detection.
Each node on the RPR ring can insert some fairness eligible packet on to the ring. Once a data packet is added on to the ring, it will be passed on by the downstream nodes. During this process, the upstream node may transmit too much traffic, leaving the downstream nodes “starved”. So a mechanism is needed to ensure each node on the ring has the same opportunity to transmit user's data packets.
In the mechanism proposed by IEEE 802.17 working group, each node will transmit a special packet, named fairness packet, which is used to pass a proposed advertising rate to the upstream node.
In order to ensure that every node on the ring has some chance to send its packets, each node will make sure that the amount of Fairness Eligible packets added to the ring not exceeding an allowed rate, which is the smaller one of the received advertising rate and the local fair rate.
The key point to guarantee the network performance lies on how to determine the advertising rate based on the advertising rate received from the downstream node and the local fair rate. The mechanism proposed by IEEE 802.17 working will be described briefly.
At present, there are two fairness modes proposed by IEEE 802.17 working group, one is named aggressive mode, the other is named conservative mode.
Here only un-weighted version is discussed for the existing fairness algorithm proposed by IEEE 802.17. It is noted that the method for dynamically allocating link bandwidth on resilient packet ring proposed in the present patent application is a weighted fairness algorithm.
The existing fairness algorithm is described as following:    add rate (add_rate): this is the byte count, in an advertisement interval, for local packets added onto the ring by the node for the FE eligible packets;    local fair rate (local_fair_rate): the low pass filtered add rate, different modes employ different algorithms to obtain local_fair_rate;    received advertising rate (received_advertising_rate): the advertising rate carried in type A fairness packet, which is advertised by the downstream node.    advertisement interval: On every advertisement interval, a type A fairness packet will be send to the upstream stations, with advertising_rate inside the type A fairness message.    advertising rate: the rate is determined as follows:            If (the local node is congested and local_fair_rate<received_advertising_rate ), the advertising_rate will be the local_fair_rate, which is a filtered version of the add_rate. The add_rate is the byte count within the advertisement Interval for packets with FE bit (fairness eligible bit) set. The received_advertising_rate is the rate carried inside the type A fairness message.        If (the local node is congested and local_fair_rate>=received_advertising_rate ) congested, the advertising_rate will be the received advertising rate from downstream (received_advertising_rate).        If (the local node is not congested), the advertising_rate will be the ones received from downstream, or null if receiving null rate, which indicates the maximum link rate.        
The main difference, along with some minor ones, between the aggressive mode and the conservative mode lies on how to define the local_fair_rate. In the aggressive mode, the local_fair_rate is the low pass filtered version of the add_rate. In the conservative mode, the local_fair_rate is the low pass filtered version of the add_rate, which is similar to that of aggressive mode, and                plus a fraction of the filtered version of the add_rate if the link utilization is less than 85% (below low_threshold)        minus a fraction of the filtered version of the add_rate if the link utilization is more than 95% (above high_threshold)        
Compared to the fairness algorithm in the aggressive mode, the fairness algorithm in the conservative mode offers better performance under varying conditions, at the cost of maximum 95% bandwidth utilization, which is inferior under certain situations.
The main issue with the aggressive mode is, when the congestion point is not a greedy source, as illustrated in FIG. 1, the bandwidth can not be properly allocated among all the sources and result in inefficient resource usage, as illustrated in simulation in FIG. 2.